﻿var _this = this;
$(document).ready(function() {

	var mode = $('#mode').text();
	hideMenus(mode);
	
	
	
	spyOnChange("input_add_code", "currentLength");
	spyOnChange("input_add_name", "currentLength2");
	
	
	
//	버튼 등록
	$('#btn_add_cancle ').click(function(){
		window.close();
	});
	$('#btn_remove_cancle ').click(function(){
		window.close();
	});
	$('#btn_modify_cancle ').click(function(){
		window.close();
	});
	
	$('#btn_add_confirm ').click(function(){
		addGroupName();
	});
	$('#btn_remove_confirm ').click(function(){
		removeGroupName();
	});
	$('#btn_modify_confirm ').click(function(){
		modifyGroupName();
	});
});

spyOnChange= function(id, target){
	
	$('#'+id).keyup(function(){
		
		new doit(id, target);
	});
	$('#'+id).keydown(function(){
		new doit(id, target);
	});
	$('#'+id).keypress(function(){
		new doit(id, target);
	});
	$('#'+id).blur(function(){
		new doit(id, target);
	});
	$('#'+id).focusout(function(){
		new doit(id, target);
	});
	$('#'+id).focusin(function(){
		new doit(id, target);
	});
	
	doit = function(_id, _target){
		console.log("doit id="+_id+", target="+_target);
		try{
			var length = $('#'+_id).val().length;
			
			console.log(length);
			console.log($('#'+_id).val());
			
			if(length>10){
				$('#'+_id).val($('#'+_id).val().substring(0,10));
				length=10;
			}
			$('#'+_target).text(length);
		}catch(e){
			errLog(e);
		}
		
	};
};

function addGroupName(){
	var stop_flag=false;
	var group_seq = $('#select_add  option:selected').val();
	var add_code = $('#input_add_code').val().toUpperCase();
	var change_name = $('#input_add_name').val();
	
	
	console.log(add_code);
	var param = {
			"upper_code" : group_seq,
			"department_code" : add_code,
			"groupname": change_name};
	
	$('#select_add option').each(function(){
		if($(this).val()==add_code){
			stop_flag=true;
			return true;	// break;
		};
	});
	var ret = stringValidate(add_code);
	if(ret){
		pezAlert("한글/영어/숫자 외에는 입력하실 수 없습니다.\n공백 입력 안됌.", function(){
			$('#input_add_code').focus();
			return;
		},
		function(){
			$('#input_add_code').focus();
			return;
		}
		).type(alertType.WARNING) 
		.show();//
		return;
	}
	
	ret = stringValidate(change_name);
	if(ret){
		pezAlert("한글/영어/숫자 외에는 입력하실 수 없습니다.\n공백 입력 안됌.", function(){
			$('#input_add_name').focus();
			return;
		},
		function(){
			$('#input_add_name').focus();
			return;
		}
		).type(alertType.WARNING) 
		.show();//
		return;
	}
	
	if(add_code.length<1||change_name.length<1){
		pezAlert("빈칸이 있으면 안됩니다.", function(){
			if(add_code.length<1){
				$('#input_add_code').focus();
			}else{
				$('#input_add_name').focus();
			}
			return;
		},
		function(){
			if(add_code.length<1){
				$('#input_add_code').focus();
			}else{
				$('#input_add_name').focus();
			}
			return;
		}
		).type(alertType.WARNING) 
		.show();//
		return;
	}
	
	if(stop_flag){
		pezAlert("동일한 그룹 코드가 있습니다.", function(){
				$('#input_add_code').val('');
				$('#input_add_name').val('');
				return;
			},
			function(){
				$('#input_add_code').val('');
				$('#input_add_name').val('');
				return;
			}
		).type(alertType.WARNING) 
		.show();//
		return;
	}
	$.post('add_group_action.json', param, function(data) {
		
	})
	.success(function() { 
//		pezAlert("second success"); 
		
		pezAlert("정상적으로 등록 되었습니다.", function(){
			reloadAndClose();
		},function(){
			reloadAndClose();
		}).modal(false).noTitle(true).show();
		
//		new pezAlertClass("정상적으로 등록 되었습니다.", function(){
//			reloadAndClose();
//		},function(){
//			reloadAndClose();
//		}).modal(false).noTitle(true).show();
	})
    .error(function() { 
    	pezAlert("error", function(){
    		// nothing
    	}).type(alertType.ERROR).show();// 
    	; 
    });
}



function reloadAndClose(){
//	opener.location.reload();
	
	window.close();	
}

function removeGroupName(){
	
	var group_seq = $('#select_remove  option:selected').val();
	var param = {"nseq" : group_seq};
	var messege = "선택한 주소록 그룹을 삭제하시겠습니까?";
//	new pezAlertClass(messege,function(){
//		$.post('remove_group_action.json', param, function(data) {
//			
//		})
//		.success(function() { 
////			pezAlert(group_seq);
//			new pezAlertClass("정상적으로 삭제 되었습니다.", function(){
//				reloadAndClose();
//			},function(){
//				reloadAndClose();
//			}).modal(false).noTitle(true).show(); 
//				
//		})
//	    .error(function() { pezAlert("error"); })
//		;
//	}).type(alertType.CONFIRM).lButton("삭제").noTitle(true).show();
	
	pezAlert(messege,function(){
		$.post('remove_group_action.json', param, function(data) {
			
		})
		.success(function() { 
//			pezAlert(group_seq);
//			new pezAlertClass("정상적으로 삭제 되었습니다.", function(){
//				reloadAndClose();
//			},function(){
//				reloadAndClose();
//			}).modal(false).noTitle(true).show(); 
			pezAlert("정상적으로 삭제 되었습니다.", function(){
				reloadAndClose();
			},function(){
				reloadAndClose();
			}).modal(false).noTitle(true).show();
				
		})
	    .error(function() { pezAlert("error"); })
		;
	}).type(alertType.CONFIRM).lButton("삭제").noTitle(true).show();
	
}

function modifyGroupName(){
	
	var group_seq = $('#select_modify  option:selected').val();
	var change_name = $('#input_modify_name').val();
	if(!(typeof change_name=='string')||change_name.length==0){
		pezAlert("변경할 이름을 입력하세요.");
		return;
	}
	var param = {"nseq" : group_seq,
			"groupname": change_name};
	
	
	$.post('modify_group_action.json', param, function(data) {
		
	})
	.success(function() { 
//		pezAlert("second success"); 
//		new pezAlertClass("정상적으로 수정 되었습니다.", function(){
//			reloadAndClose();
//		},function(){
//			reloadAndClose();
//		}).modal(false).noTitle(true).show();
		
		pezAlert("정상적으로 수정 되었습니다.", function(){
			reloadAndClose();
		},function(){
			reloadAndClose();
		}).modal(false).noTitle(true).show();
	})
    .error(function() { pezAlert("error"); })
	;
}


function hideMenus(mode){
	$('#group_add').hide();
	$('#group_remove').hide();
	$('#group_modify').hide();
	
	$('#select_add').val($('#selectedId').text());
	$('#select_remove').val($('#selectedId').text());
	$('#select_modify').val($('#selectedId').text());
	
	
	
	$('#'+mode).show();
	
	
}


function errLog(e){
	console.log(e);
}

function log(e){
	errLog("======== Log Start ========");
	errLog(e);
	errLog("======== Log the end ========");
}